Common encryption (CENC) specifies a generic encryption that can be utilized by one or more digital rights and key management systems (DRM systems) to enable decryption of the same file using different DRM system. CENC is a generic encryption scheme that includes stream encryption and storage of stream encryption parameters, for International Organization for Standardization (ISO) Base Media Files (ISOBMFF). An advantage of CENC is that providing a common way to encrypt content decouples the content encryption from the key acquisition. This provides support for multiple DRM systems.
The CENC mechanism only encrypts media samples or parts thereof and leaves the ISOBMFF metadata such as the file and track structure boxes un-encrypted to enable players to recognize and read the file correctly and acquire any required license. CENC supports the encryption of network abstraction layer (NAL) based video encoding formats such as Advanced Video Coding (AVC) and High Efficiency Video Coding (HEVC). Thus, CENC offers sub-sample encryption capability, where only the video data of a sub-sample is encryption, while the NAL header is not. This flexibility can be used to offer a free preview of a video, enable editing and processing of the video, or provide free access to some service components such as audio. By providing offsets to the encrypted byte ranges inside a sample in an “mdat”, players can easily process the file and pass the encrypted chunks to the decryptor for decryption and playback.